#ifndef _NE_MESH_MANAGER_H_
#define _NE_MESH_MANAGER_H_

#include <common/Singleton.h>
#include <system/ResourceManager.h>
#include <graphics/Mesh.h>

namespace ne
{
    class NEAPI MeshManager : public ResourceManager, public Singleton<MeshManager>
    {
        public:
            MeshManager();

            virtual ~MeshManager();

        public:
            static MeshManager& GetSingleton();

            static MeshManager* GetSingletonPtr();

        protected:
            Resource* createImplement(const uint64_t id,
                                      const std::string &name,
                                      const std::string &fileName,
                                      const bool isManual,
                                      ManualResourceLoader *pLoader);
    };
}

#endif
